package com.xingchi.tornado.dict.service;

import com.xingchi.tornado.dict.model.dto.DictGroupAddDTO;
import com.xingchi.tornado.dict.model.dto.DictGroupDTO;
import com.xingchi.tornado.dict.model.dto.DictGroupEditDTO;
import com.xingchi.tornado.dict.model.dto.DictGroupQueryDTO;
import com.xingchi.tornado.mybatisplus.service.BasePlusService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author xingchi
 * @date 2025-05-27 15:24
 */
public interface DictGroupService extends BasePlusService<DictGroupDTO, DictGroupQueryDTO> {

    /**
     * 添加字典分组
     *
     * @param dictGroup 字典分组添加信息
     * @return          分组id
     */
    Long addGroup(DictGroupAddDTO dictGroup);

    /**
     * 更新字典信息
     *
     * @param dictGroup 字典分组信息
     * @return          分组id
     */
    Boolean updateGroup(DictGroupEditDTO dictGroup);

    /**
     * 删除字典分组
     *
     * @param id 分组id
     * @return   是否成功
     */
    Boolean deleteGroup(Long id);

    /**
     * 根据分组code批量删除
     *
     * @param groupCodes 分组code
     * @return           是否成功
     */
    Boolean deleteByGroupCode(List<String> groupCodes);

}
